# -*- coding: utf-8 -*-
"""
简化的缓存管理器

只提供基本的缓存目录管理功能，供检索器使用。

"""

import os
from pathlib import Path
from loguru import logger


class CacheManager:
    """
    简化的缓存管理器
    
    只提供基本的缓存目录管理功能:
    - 缓存目录初始化
    - 缓存目录路径获取
    """
    
    def __init__(self, cache_dir: str = None):
        """
        初始化缓存管理器
        
        Args:
            cache_dir: 缓存目录路径，默认为项目根目录下的.cache
        """
        if cache_dir is None:
            # 默认缓存目录：项目根目录下的.cache文件夹
            current_file = Path(__file__)
            project_root = current_file.parent.parent.parent  # 从tools目录回到项目根目录
            cache_dir = project_root / ".cache"
        
        self.cache_dir = Path(cache_dir)
        self._ensure_cache_dir()
        
        logger.debug(f"缓存目录: {self.cache_dir}")
    
    def _ensure_cache_dir(self):
        """确保缓存目录存在"""
        try:
            self.cache_dir.mkdir(parents=True, exist_ok=True)
        except Exception as e:
            logger.error(f"创建缓存目录失败: {e}")
            raise


# 全局缓存管理器实例
cache_manager = CacheManager()